package com.fx.area.service.impl;

import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.fx.area.mapper.AreaMapper;
import com.fx.area.domain.Area;
import com.fx.area.service.IAreaService;

/**
 * 行政区划Service业务层处理
 *
 * @author fxiao
 * @date 2021-09-27
 */
@Service
public class AreaServiceImpl implements IAreaService
{
    @Autowired
    private AreaMapper areaMapper;

    /**
     * 查询行政区划
     *
     * @param code 行政区划ID
     * @return 行政区划
     */
    @Override
    public Area selectAreaById(Long code)
    {
        return areaMapper.selectAreaById(code);
    }

    /**
     * 查询行政区划列表
     *
     * @param area 行政区划
     * @return 行政区划
     */
    @Override
    public List<Area> selectAreaList(Area area)
    {
        if(area.getParentCode()==null) area.setParentCode(0L);
        return areaMapper.selectAreaList(area);
    }

    /**
     * 新增行政区划
     *
     * @param area 行政区划
     * @return 结果
     */
    @Override
    public int insertArea(Area area)
    {
        area.setCreateTime(DateUtils.getNowDate());
        return areaMapper.insertArea(area);
    }

    /**
     * 修改行政区划
     *
     * @param area 行政区划
     * @return 结果
     */
    @Override
    public int updateArea(Area area)
    {
        area.setUpdateTime(DateUtils.getNowDate());
        return areaMapper.updateArea(area);
    }

    /**
     * 批量删除行政区划
     *
     * @param codes 需要删除的行政区划ID
     * @return 结果
     */
    @Override
    public int deleteAreaByIds(Long[] codes)
    {
        return areaMapper.deleteAreaByIds(codes);
    }

    /**
     * 删除行政区划信息
     *
     * @param code 行政区划ID
     * @return 结果
     */
    @Override
    public int deleteAreaById(Long code)
    {
        return areaMapper.deleteAreaById(code);
    }
}
